package com.health.db.dao.sm.impl;


import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.health.db.dao.ServiceInterface;
import com.health.db.dao.sm.IGoodsCourseItemDao;
import com.health.db.mapper.GoodsCourseItemMapper;
import com.health.db.model.GoodsCourseItem;
import com.health.redis.RedisConstants;

@Component("goodsCourseItemDao")
public class GoodsCourseItemImpl extends ServiceInterface implements IGoodsCourseItemDao{

	@Autowired
	private GoodsCourseItemMapper goodsCourseItemMapper;
	
	String  id=":id:";

	public GoodsCourseItemMapper getGoodsCourseItemMapper() {
		return goodsCourseItemMapper;
	}

	public void setGoodsCourseItemMapper(GoodsCourseItemMapper goodsCourseItemMapper) {
		this.goodsCourseItemMapper = goodsCourseItemMapper;
	}

	/**
	 * example
	 * {
	 *   goodsid  商品id 可以为空
	 * }
	 */
	@Override
	public GoodsCourseItem selectByPrimaryKey(Long recId) {
		
		getRedisOperatiorLogic();
		String key=RedisConstants.GoodsCourseItemMapper+id+recId;
		Object object=null;
		GoodsCourseItem  list=null;
		if(redisOperatiorLogic.isJedisIsConnected())
		{
			object = redisOperatiorLogic.readObject(key, getOrderRedisGroupNo("1"));
		}
		if(null!=object){
			if (!object.equals("")) {
				list =  (GoodsCourseItem) object;
			}
		}
		else
		{
			list=goodsCourseItemMapper.selectByPrimaryKey(recId);
			if(redisOperatiorLogic.isJedisIsConnected())
			{
			redisOperatiorLogic.setEx(key, list, getOrderRedisGroupNo("1"));
			}
		}
		return list;
	}
}
